Associative search engine

ABSTRACT

This invention relates to an advertisement machine which provides advertisements to a user searching for desired information within a data network. The machine receives, from a user, a search request including a search argument corresponding to the desired information and searches, based upon the received search argument, a first database having data network related information to generate search results. It also correlates the received search argument to a particular advertisement in a second database having advertisement related information. The search results together with the particular advertisement are provided by the machine to the user.

CROSS REFERENCE TO RELATED PATENTS/PATENT APPLICATIONS ContinuationPriority Claim, 35 U.S.C. §120

The present U.S. Utility Patent Application claims priority pursuant to35 U.S.C. §120, as a continuation, to U.S. Utility patent applicationSer. No. 13/031,478 (Attorney Docket No. 7000-770C2), filed Feb. 21,2011, which is a continuation of U.S. Utility patent application Ser.No. 11/767,563 (Attorney Docket No. 7000-770C4), filed Jun. 25, 2007,now issued as U.S. Utility Pat. No. 7,895,183, which is a continuationof U.S. Utility patent application Ser. No. 09/351,747 (Attorney DocketNo. 7000-770C3), filed Jul. 8, 1999, now issued as U.S. Utility Pat. No.7,236,969, which is a continuation of U.S. Utility patent applicationSer. No. 08/798,747 (Attorney Docket No. 7000-770), filed Feb. 13, 1997,now issued as U.S. Utility Pat. No. 6,098,065, the contents of which arehereby incorporated herein by reference in their entirety and made partof the present U.S. Utility Patent Application for all purposes.

BACKGROUND OF THE INVENTION

The invention generally relates to search engines and, in particular, toan associative search methodology, based on a contextual search engine,for retrieving related information.

The Internet provides an excellent vehicle for access to informationabout goods and services on a global basis. In theory, anyone can accessinformation about any product. In practice, the problem is one offinding the correct information. Many techniques for solving thisproblem are known, including: indexing systems such as Yahoo, graphicalelectronic malls, hall of malls, directories, and text search engines,such as OpenText. These techniques and tools for searching andretrieving information, in their present form, can inundate the userwith large amounts of unwanted material.

This later problem can be alleviated somewhat by enabling the user toprovide search statements as a set of criteria which are combined withlogical operators, such as ‘AND’, ‘OR’ and ‘NOT’ operators. However,many problems still exist with this. One of them is that the user isleft to his/her own imagination to try to think of all the alternativedescriptions (i.e. keywords) of a product or service. As search enginesand techniques become ever more powerful in the number and diversity ofdatabases they can access, the amount of information which it ispossible to present to a user can quickly become excessively large. Theproblem or opportunity still remains to quickly find the relevantinformation for which the user is looking.

SUMMARY OF THE INVENTION

It is an object of the present invention to provide a new and improvedassociative search methodology for retrieving related information.

The invention, therefore, according to a first broad aspect provides amethod of providing advertisements to a user searching for desiredinformation within a data network, comprising the steps of: receiving,from the user, a search request including a search argumentcorresponding to the desired information; searching, based upon thereceived search argument, a first database having data network relatedinformation to generate search results; correlating the received searchargument to a particular advertisement in a second database havingadvertisement related information, and providing the search resultstogether with the particular advertisement to the user.

According to a second broad aspect, the invention provides a method ofsearching for desired information within a data network, comprising thesteps of: receiving, from a user, a search request including a searchargument corresponding to the desired information; searching, based uponthe received search argument and user profile data, a database ofinformation to generate a search result; and providing the searchresults to the user.

According to a third broad aspect, the invention provides a system forproviding advertisements to a user searching for desired informationwithin a data network, comprising; means for receiving, from the user, asearch request including a search argument corresponding to the desiredinformation; means for searching, based upon the received searchargument, a first database having data network related information togenerate search results; means for correlating the received searchargument to a particular advertisement in a second database havingadvertisement related information; and means for providing the searchresults together with the particular advertisement to the user.

According to a fourth broad aspect, the invention provides a system forsearching for desired information within a data network, comprising:means for receiving, from a user, a search request including a searchargument corresponding to the desired information; means for searching,based upon the received search argument and user profile data, adatabase of information to generate a search result; and means forproviding the search results to the user.

Conventional search engines, for example OpenText, provide a basis onwhich the methodology according to this invention may be implemented. Ina particular embodiment, the invention is manifested by an advertisingsystem including an associative search engine that may be tied into andform an integral part of the conventional search engine. When an enduser accesses the conventional search engine, the associative engine ofthe selling system examines the user's choices and search instructions,that have been input by the user, and formulates the necessary strategyand tactics to offer products that would appeal to the end user based onhis/her inputs and choices up until that point in the search. Since theprocess is dynamic the strategy and tactics can be continually refinedand the results presented to the end user in a predictive order andfashion that relates to that end user's past preferences (either for theimmediate search underway or including all prior search data stored forthat user) and a contextual database. This effectively providesunobtrusive, related and useful data and options to the end user who issearching for information. The processor used for the advertising andselling mechanism can be a part of or interconnected with the searchengine.

Some examples will illustrate how this invention can have high value toan end user. An end user's profile data may contain such information asthe make, model and year of automobile he/she owns or leases. When tiresare needed, the manufacturers recommended tire types and options may beconsidered as sort criteria provided within a contextual database.Another example relates to when airline reservations are being sought.All of a person's preferences, which today are normally sorted one byone through a travel agent, could be utilized by the advertising andselling mechanism to provide the informed response.

In addition to the search criterion, as users interact with theadvertising system, it will continue to compile preference data (e.g. alist of keywords) for each user. All preferences, for example, can beleft in a type of default mode or even presented to the user for him/herto edit and re-prioritize in order to look for diversity oralternatives. The system can detect exceptions and contradictions sothat the end user can be shown immediately that some of the optionswould violate natural tendencies.

Some of the search patterns or preferences will be keyed off of naturalinterests also such as: social, family, political, technological,geographical, environmental, educational and so on. Once thesepreferences are known, then an advertisement or a proposed customizedproduct brochure can be prepared.

This invention is also enhanced by advances in technology occurring inthe emerging ubiquitous data world, such as new software languages. Oneexample is “Java”. Java is an environment that can be exported to an endusers platform to run an application which may include graphics, movingdemonstrations, cartoon like explanations or even video. The Java likeenvironment could be used to customize with more than name, it can beused to customize with detailed examples.

One other opportunity presented to service providers is the potential tocreate new and better ways to improve the environment presented to endusers of various classes by remembering what was effective for a sale tooccur. In this way, key elements of a presentation or search that havehigher success can be put into a higher priority or category for furtheruse and therefore more rapid development through even more intensefeedback due to subsequent use.

While this invention can be integrated with traditional Internet searchengines (such as Yahoo or Lycos), full advantage can be obtained byintegrating the invention with an Internet Access provider. An InternetAccess Provider can maintain a more complete user database. Customersare localized, so individual databases will contain fewer users. Thisallows more database space to be allocated to each user. In addition,more detailed information can be maintained, such as geographicallocation, type of home computer system, and any additional informationthe user may choose to provide to the Internet Access Provider. It isanticipated that the Java environment will develop so that it too willlearn and adapt. As a user continues to stop presentations at certainpoints, scan, re-scan, look for further input at certain points, abort anegotiation and so on at certain points, then such points or logicroutines could be avoided or alternatives considered. The presentinvention proposes such a dynamic and relational preferences methodologyin order to more rapidly and more effectively couple a user's needs withproduct or service offerings.

It is also recognized that these techniques may be applied to aneducational environment where, for example, a student may be able tohave an environment that is aurally enhanced, another one that isvisually enhanced, another one that is textually enhanced and yetanother that is anecdotally as opposed to logically enhanced. There aremany other opportunities due to different personal proclivities,strengths, skills or disabilities.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be better understood from the following detaileddescription of an advertising machine together with reference to theaccompanying drawings, in which:

FIG. 1 is a schematic representation of the advertising machineincluding an associative search engine; and

FIG. 2 is a schematic representation of the advertising machine incombination with an Internet Access Service provider.

DETAILED DESCRIPTION OF THE DRAWINGS

Referring to FIG. 1, shown is an advertising machine, generallyreferenced by 10, together with a data processing device 12 and acommunications link 14 through which the device 12 interacts with theadvertising machine 10. The communications link 14 may be provided by aglobal data network, typically the Internet, and the data processingdevice 12 may be any conventional hardware/software combinationsupporting functionality for communications over the Internet. Examplesof the data processing device 12 include a personal computer (PC) orMacintosh executing an appropriate browser application, such as,Netscape Navigator which functions as an interface to the World Wide Web(WWW) of the Internet. Functionality provided by the advertising machine10 may be implemented using an appropriately programmed conventionaldata processing server platform.

The advertising machine 10, in this particular embodiment, comprises adatabase search engine 16 and an associative search engine 18 which mayaccess a database 20 having contextual data 22 and product data 24. Thedatabase search engine 18 is conventional technology, an example ofwhich is the OpenText engine that provides searches based on subject,strings, boolean, text, etc. Such input search arguments may be receivedfrom an end user via the data processing device 12 and data link 14 and,accordingly, the database search engine 16 effects a search of thecontextual data 22 in the database 20 and returns results of the searchto the end user, as a page displayed on the device 12. The contextualdatabase typically contains information relating to the Internet, forinstance, keywords associated with respective WWW site locations.

The associative search engine 18, in accordance with the presentinvention, may contain rule based software algorithms or non-precisetechniques, such as, fuzzy logic that can correlate a search argumentderived from the user and changes in the argument during a singlesession, to particular product data within the product database 24. Theassociative search engine 18 selects the most logical product from itsavailable data 24 and then provides an advertisement insert that isadded to the end user's search page, in an attempt to present the enduser with the product that is closest to the need as determined by theassociative search engine 18 of the selling machine 10.

In operation, for example, the process effected when an end user at thedevice 12 accesses the advertising machine 10 is as follows.

1) The end user device 12 sends a search request outlining the searchargument to the database search engine 16.

2) The search engine 16, having carried out a traditional search ofInternet related information in the contextual data 22, passes theargument and results of the its search to the associative search engine18 which then looks for a match in the product data 24 of the database20. The associative search engine 18 may determine a logical product fitto the initial search argument, or it may create a logical tree analysisof possible product fits and selects a probable best product for anadvertisement window to be displayed with the search results.

3) The associative engine 18 passes the data of the selected product tothe search engine 16 which in turn provides the results of the searchagainst the given argument together with the initial productadvertisement to the device 12 for displaying to the end user.

4) The end user refines his or her search by either clicking on adisplayed result or refining their search through additional argumentsor search criteria.

5) The associative search engine 18 and the database search engine 16again work together in providing refined data as in (2) above. In thecase of the end user clicking on (i.e., selecting) a specific searchresult, the associative search engine 18 further refines its logicaltree strategy and selects the probable best fit product and generates anadvertisement.

6) The end user search results advertisement window is continuallyupdated on each selection or refinement using a technology such as Javaproviding the end user with a continually updated product advertisementthat is considered to be most relevant (best fit) at that point in thesearch. In addition, failure of the end user to click on theadvertisement is used as a criterion in the logical tree in providingthe appropriate advertisement.

7) Once the end user clicks on (selects) the advertisement displayed onthe device 12, an appropriate message is sent to the advertising machine10 and, in particular, to the associative search engine 18 which mayautomatically connect the end user to the seller of the product, forinstance, by forwarding the browser of the end user device 12 to the WWWsite address of the seller. In the product data 24 for this seller, theassociative search engine may record that this transaction occurred, inorder that a toll for bringing a buyer and seller together may beextracted.

Moreover, user profile data may be maintained on end user device 12 andaccessed by the associative search engine 18. The profile data contains,for example, end user preferences and previous search arguments whichmay be used to augment the individual search arguments received with thesearch request to select a best fit product advertisement. Theassociative search engine 18 retrieves and updates the profile data onthe device 12, using appropriate messages exchanged over thecommunications link 14. For example, the search arguments from thecurrent search session may be added to the user profile data.

Turning to the system illustrated in FIG. 2, the advertising machine 30(similar to the machine 10 in FIG. 1) is integrated as part of thefunctionality embodied at an Internet access provider equipment site 32which typically includes a telephone network terminating equipment 34, arouter 36 through which TCP/IP packets are transmitted to and receivedfrom the Internet, and a server 38 which in general controls operationand couples data calls terminated by equipment 34 to router 36. The link39 represents a data call established through the telephone network tothe access provider site 32.

The associative search engine 40 of machine 30 contains softwarealgorithms or non-precise techniques, such as, fuzzy logic thatcorrelates a search argument derived from the user and changes in theargument during a single session with the product database 42 wherebythe most logical product from its available list may be selected. Itthen provides an advertisement insert that is added to the end user'ssearch page in an attempt to offer the end user with the product that isclosest to the need as determined by the associative search engine 40.

The access provider site 32, incorporating the advertising machine 30,is the sole channel available to the end user for accessing theInternet. When an end user carries out a search using the search engine44 and clicks on (selects) a specific result or chooses an alternateinformation site address, the information is passed to the associativesearch engine 40 of that access provider 32. Thus, not only the pagewith the search results but also the home page of the access providercan be updated with the appropriate advertisement which is selected bythe associative search engine 40 from the product database 42. Inaddition, since the data processing device 12 of the end user isconnected through the access provider site 32 for all destinationswithin the Internet, a comprehensive user profile database 48 may bemaintained by the associative search engine 40, about the end userspreferences and previous search arguments which may be used to augmentthe individual search argument received with the search request toselect a best fit product advertisement.

In operation, for example, the process effected when an end user at thedevice 12 accesses the Internet through access provider site 32 is asfollows.

1) The end users access the search engine 44, provided as a basicservice by the access provider, and requests a search outlining thesearch argument.

2) The search engine 44 passes the argument and results of its search indatabase 46 to the associative search engine 40 which looks for a matchin the product database 42 determining a logical product fit to theinitial search argument. The associative search engine 40 creates alogical tree analysis of possible product fits, and selects or creates aprobable best product advertisement for the advertisement window on thesearch results. In this case, the associative search engine 40 also canutilize the maintained profile on the end user from past search sessionsand/or historical data gathered on their buying habits, in the productselection processing. The associative search engine correlates theuser's identity to data in the user profile database 48 which itmaintains and updates with data (e.g., search argument received withsearch request) from the current search session.

3) The search engine 44 provides the end user with the results of thesearch against the given argument including the initial productadvertisement from the associative search engine 40. The results andadvertisement are displayed by end user device 12.

4) The end user refines his/her search by either clicking on a result,or refining their search through additional arguments or searchcriteria.

5) The associative search engine 40 and the database search engine 44again work together in providing refined data as in (2) above. In thecase of the end user clicking on (selecting) a specific search resultthe associative search engine 40 further refines its logical treestrategy and selects the probable best fit product and generates anadvertisement.

6) The end user device 12 search results advertisement window iscontinually updated on each selection or refinement using a technologysuch as Java, providing the end user with a continually updated productadvertisement that is considered to be most relevant (best fit) at thatpoint in the search. In addition, failure of the end user to click onthe advertisement is used as a criterion in the logical tree inproviding the appropriate advertisement. The access provider's home pagesent to the end user can also contain a specialized advertisementconstructed from the end user's profile data (e.g., searches and/orbuying habits).

7) Once the end user is led to click on the advertisement, theassociative search engine 40 of the selling machine 30 takes control andconnects the potential buyer to the WWW site of the seller of theproduct, thereby exacting a toll for the transaction of bringing a buyerand seller together.

Those skilled in the art will recognize that various modifications andchanges could be made to the invention without departing from the spiritand scope thereof. It should therefore be understood that the claims arenot to be considered as being limited to the precise embodiments of theselling machine set forth above, in the absence of specific limitationsdirected to each embodiment.

1. A data processing device comprising data processing hardware, dataprocessing software, a communication interface, and a user interface,the data processing device configured to: provide to a database searchengine and an associative search engine at least one search argument anduser profile information, the at least one search argument being basedon user interaction with the data processing device; receive from thedatabase search engine at least one search result, the at least onesearch result being based on the at least one search argument; receivefrom the associative search engine at least one associated result, theat least one associated result being based on the at least one searchargument and the user profile information; and provide the at least onesearch result and the at least one associated result to the userinterface.
 2. The data processing device of claim 1, wherein the dataprocessing hardware and the data processing software are configured tomaintain the user profile information on the data processing device. 3.The data processing device of claim 2, wherein the data processinghardware, the data processing software and the communication interfaceare configured to transmit the user profile information from the dataprocessing device to the associative search engine via the communicationinterface.
 4. The data processing device of claim 3, wherein the dataprocessing hardware, the data processing software and the communicationinterface are configured to transmit the user profile information fromthe data processing device to the associative search engine via thecommunication interface in response to at least one message receivedfrom the associative search engine via the communication interface. 5.The data processing device of claim 2, wherein the data processinghardware, the data processing software and the communication interfaceare configured to enable the associative search engine to access theuser profile information.
 6. The data processing device of claim 2,wherein the user profile information comprises user preferences.
 7. Thedata processing device of claim 2, wherein the user profile informationcomprises previous search activity of the user.
 8. The data processingdevice of claim 2, wherein the user profile information compriseslocation information.
 9. The data processing device of claim 2, whereinthe user profile information comprises information characterizing thedata processing device.
 10. The data processing device of claim 9,wherein the information characterizing the data processing devicecomprises a device type of the data processing device.
 11. The dataprocessing device of claim 2, wherein the user profile informationcomprises previous search arguments received from the user.
 12. The dataprocessing device of claim 1, wherein the user interface comprises adisplay, and wherein the data processing hardware, the data processingsoftware and the display are configured to present the at least onesearch result and the at least one associated result on the display. 13.The data processing device of claim 12, wherein the data processinghardware, the data processing software and the display are configured topresent the at least one search result and the at least one associatedresult in different portions of the display.
 14. The data processingdevice of claim 12, wherein the data processing hardware, the dataprocessing software and the communication interface are configured toreceive the at least one search result and the at least one associatedresult in a web page data file that includes executable code configured,upon execution by the data processing device of the executable code, tocause presentation of an advertisement on the display of the dataprocessing device.
 15. The data processing device of claim 12, whereinthe data processing software provides a Java environment configured topresent the at least one search result and the at least one associatedresult on the display.
 16. The data processing device of claim 12,wherein the data processing software comprises an internet browserapplication.
 17. The data processing device of claim 12, wherein thedata processing hardware and the data processing software are configuredto detect a user selection of at least one of a search result and anassociated result by detecting a user click on a link to a websiteassociated with the at least one of the search result and the associatedresult being presented on the display.
 18. The data processing device ofclaim 17, wherein the data processing hardware and the data processingsoftware are configured to transmit a message via the communicationinterface when the user clicks on the link to the website associatedwith the at least one of the search result and the associated result.19. The data processing device of claim 17, wherein the data processinghardware and the data processing software are configured to update theuser profile information to indicate that the user clicked on the linkto the website associated with the at least one of the search result andthe associated result.
 20. The data processing device of claim 1,wherein the data processing hardware, the data processing software andthe communication interface are configured to: receive search refinementinput based on user interaction with the data processing device;transmit the search refinement input to the database search engine andthe associative search engine via the communication interface; receiveat least one modified search result from the database search engine andat least one other associated result from the associative search engine,the at least one modified search result and the at least one otherassociated result being based on at least the search refinement input;and provide the at least one modified search result and at least oneadvertisement to the user interface.
 21. The data processing device ofclaim 20, wherein the search refinement input is based on user selectionof an element of the at least one search result.
 22. The data processingdevice of claim 20, wherein the search refinement input comprises atleast one additional search argument received from the user.
 23. Thedata processing device of claim 20, wherein the data processing hardwareand the data processing software are configured to update the userprofile information to indicate the search refinement input.
 24. Thedata processing device of claim 1, wherein the at least one associatedresult includes a link to a website associated with the at least oneassociated result.
 25. The data processing device of claim 1, whereinthe data processing hardware, the data processing software and thecommunication interface are configured to: determine that a user doesnot select the at least one associated result; and transmit theindication that the user does not select the at least one associatedresult to the associative search engine via the communication interface.26. The data processing device of claim 1, wherein the data processinghardware, the data processing software and the communication interfaceare configured to: receive user input indicating selection of the atleast one associated result; and transmit information indicating that auser selected the at least one associated result to the associativesearch engine via the communication interface.
 27. The data processingdevice of claim 26, wherein the data processing hardware and the dataprocessing software are configured to update the user profileinformation to indicate selection of the at least one associated result.28. The data processing device of claim 1, wherein the data processingdevice is a personal computer.
 29. The data processing device of claim1, wherein the at least one associated search result comprises at leastone advertisement.
 30. The data processing device of claim 1, whereinthe user profile information is based on user interaction with the dataprocessing device.
 31. The data processing device of claim 1, whereinthe data processing device is configured to receive updated user profileinformation and to update the user profile information responsive to theupdated user profile information.
 32. The data processing device ofclaim 31, wherein the updated user profile information comprises searcharguments from a current search session.
 33. The data processing deviceof claim 31, wherein the data processing device is configured to receivethe updated user profile information from the associative search engine.